// pages/content/video.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    videoUrl: null,
    title: '',
    coverUrl: '',
    showCover: false,
    percent: 0,
    downloadTask: null,
    iphonex: false
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    this.videoContext = wx.createVideoContext('myVideo');
    console.log(wx.getStorageSync('coverUrl'))
    this.setData({
      videoUrl: options.url,
      title: options.name,
      coverUrl: options.url + '?x-oss-process=video/snapshot,t_1,m_fast'
    })
    wx.setNavigationBarTitle({
      title: options.name,
    })
    let self = this;
    wx.getSystemInfo({
      success: function (res) {
        console.log(res)
        var name = 'iPhone X'
        if (res.model.indexOf(name) > -1) {
          self.setData({
            iphonex: true
          })
        }
      }
    })
  },
  cancelLoad(){
    this.data.downloadTask.abort();
    this.setData({
      showCover: false,
      percent: 0
    })
  },
  loadDown(){
    let self = this;
    // wx.showLoading({
    //   title: '下载中...',
    // })
    this.setData({
      showCover: true,
      percent: 0
    })
    const downloadTask = wx.downloadFile({
      url: self.data.videoUrl, //仅为示例，并非真实的资源
      success(res) {
        console.log(res);
        // 只要服务器有响应数据，就会把响应内容写入文件并进入 success 回调，业务需要自行判断是否下载到了想要的内容
        if (res.statusCode === 200) {
            wx.saveVideoToPhotosAlbum({
              filePath: res.tempFilePath,
              success(res) {
                console.log('res',res)
                if (res.errMsg === 'saveVideoToPhotosAlbum:ok'){
                  
                }
              },
              complete(err) {
                console.log(err)
                self.setData({
                  showCover: false,
                  percent: 0
                })
                
              }
            })

        }
      }
    })
    this.setData({
      downloadTask: downloadTask
    })
    downloadTask.onProgressUpdate((res) => {
      self.setData({
        percent: res.progress
      })
      if (res.progress == 100){
        setTimeout(()=>{
          wx.showToast({
            title: '下载完成',
            icon: 'success',
            duration: 1000
          })
        },500)
        
      }
      console.log('下载进度', res.progress)
      console.log('已经下载的数据长度', res.totalBytesWritten)
      console.log('预期需要下载的数据总长度', res.totalBytesExpectedToWrite)
    })
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {
    
  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {
    return {
      title: this.data.title,
      path: '/pages/content/video?name=' + this.data.title + '&url=' + this.data.videoUrl,
      imageUrl: this.data.coverUrl
    }
  }
})